#!/bin/bash

#Fecha con formato dia/mes/año


<<validarFecha
Funcion que valida una fecha en formato dd/mm/yyyy
$1 la fecha a validar.
Devuelve 0 si la fecha es valida y 1 en caso contrario
validarFecha

function validarFecha()
{

	local expRegFecha="([0-3][0-9])/([0-1][0-9])/([0-9]{4})$"

	if [ $# -ne 1 ]
	then
		echo "1"
		return
	fi;

        if [[ $1 =~ $expRegFecha ]]
        then	
                local dia=${BASH_REMATCH[1]}
                local mes=${BASH_REMATCH[2]}
                local anio=${BASH_REMATCH[3]}				
        else
		echo "1"
                return
        fi;

	#Valida dia
        if [ $dia -lt 1 -o $dia -gt 31 ]
        then
               	#Dia invalido
		echo "1"
                return
        fi;

       	#Valida mes
        if [ $mes -lt 1 -o $mes -gt 12 ]
        then
               	#Mes invalido
		echo "1"
                return
        fi;
	echo "0"
	return
}

echo $(validarFecha $1)
